perm filename SYNSUB.FAI[PIX,HPM]8 blob
sn#423204 filedate 1979-03-07 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00013 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 TITLE SYNSUB
C00003 00003 HELPER: OUTSTR [ASCIZ \
C00007 00004 NOCHAN:
C00009 00005 FILNM:
C00011 00006 FONTNO: POP P,RETAD
C00013 00007 FEWCHN:
C00014 00008 CRLF: OUTSTR [ASCIZ \
C00015 00009 FIRST: SKIPN FIRF
C00016 00010 FIRST1: SKIPN FIRF1
C00017 00011 FIRST2: SKIPN FIRF2
C00018 00012 FIRST3: SKIPN FIRF3
C00019 00013 END
C00020 ENDMK
C⊗;
TITLE SYNSUB
ENTRY HELPER,NOCHAN,FEWCHN,FIRST1,FIRST2,FIRST3,FIRST,CRLF
ENTRY FILNM,FONTNO
P←17 ↔ A←1 ↔ B←2 C←3 ↔ D←4
RETAD: 0
RETAD1: 0
ESS: 0
0
SING: ASCIZ \ is\
PLUR: ASCIZ \s are\
NUMOUT: POP P,RETAD1
POP P,A
PUSH P,RETAD1
MOVE 0,SING
CAIE A,1
MOVE 0,PLUR
MOVEM 0,ESS
outdec: jumpge a,outde1
push p,a
movei a,"-"
outchr a
pop p,a
movn a,a
outde1: idivi a,12
hrlm b,(p)
skipe a
pushj p,outdec
hlrz a,(p)
addi a,"0"
outchr a
popj p,
HELPER: OUTSTR [ASCIZ \
XGPSYN displays files on the video synthesizer, imitating the XGP. It can
fill the screen with 1/2, 1 or 2 pages at time.
Tell it which file you want to look at, either in the command line (R
XGPSYN;FILENAME) or in answer to the FILE: question, and any spooler style
switches, such as /FONT=BASL30 (.XGP files already contain all necessary
switches). The page number questions can be answered with the page you
want to view, any additional spooler switches, or one of the following
commands:
H Half density. Next display will be 1/2 page/screen.
F Full density. 1 page/screen.
D Double density. 2 pages/screen.
V view. Redraw the last display.
W negate subsequent displays. B/W → W/B and W/B → B/W.
K kill. Erase the synthesizer.
Q quit. Exit program and load line editor with XS command.
O output the last display as a hand/eye picture file.
B Bitwise resolution. Next display will be suitable for XGPing.
T Transposed bitwise resolution. Sideways B.
E Enormous resolution. Next display can be sent expanded to XGP.
X XGP output the last B,T or E display.
L list file in B resol. Slower and more tolerant than XSPOOL.
C display on your own DD channel instead of video synthesizer
S use video synthesizer instead of own channel
Notes: The video synthesizer is a video rate D/A driven by data disc
channels 30 through 37. H density requires 3 of these channels, F needs 4
and D wants 5. These are rarely available during heavy system load. It
takes about 7 CPU seconds to compose a single page.
\]
POPJ P,
NOCHAN:
OUTSTR [ASCIZ \No synthesizer channels are available.
Perhaps you should give up.
\]
POPJ P,
FILNM:
OUTSTR [ASCIZ \FILE NAME\]
POPJ P,
FONTNO: POP P,RETAD
OUTSTR [ASCIZ \FONT#\]
PUSHJ P,NUMOUT
OUTSTR [ASCIZ \=\]
JRST @RETAD
FEWCHN:
POP P,RETAD
OUTSTR [ASCIZ \
Only \]
PUSHJ P,NUMOUT
OUTSTR [ASCIZ \ synthesizer channel\]
OUTSTR ESS
OUTSTR [ASCIZ \ available, display will be ugly.
\]
JRST @RETAD
CRLF: OUTSTR [ASCIZ \
\]
POPJ P,
FIRST: SKIPN FIRF
OUTSTR [ASCIZ \
(or <cr> for next window,
H,F,D to change density,
V to redraw, K to erase, Q to quit,
B,T,E,W,X,L or spooler switches)\]
AOS FIRF
POPJ P,
FIRF: 0
FIRST1: SKIPN FIRF1
OUTSTR [ASCIZ \
(eg. 3.5 for p3 bottom [or 2-1.5 if no formfeeds])\]
AOS FIRF1
POPJ P,
FIRF1: 0
FIRST2: SKIPN FIRF2
OUTSTR [ASCIZ \ <esc>47S to view\]
AOS FIRF2
POPJ P,
FIRF2: 0
FIRST3: SKIPN FIRF3
OUTSTR [ASCIZ \(and any switches)\]
AOS FIRF3
POPJ P,
FIRF3: 0
END